{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "5d904dee",
   "metadata": {},
   "source": [
    "# Example 13: Phase transition"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6465ec94",
   "metadata": {},
   "source": [
    "In this example, we will use KAN to learn phase transitions in data. Phase transition is an important concept in science. We consider a toy example $f(x_1,x_2,x_3)$ is 1 if $g(x_1,x_2,x_3)>0$, and is 0 if $g(x_1,x_2,x_3)<0$. $g(x_1,x_2,x_3)={\\rm sin}(\\pi x_1)+{\\rm cos}(\\pi x_2)+{\\rm tan}(\\frac{\\pi}{2}x_3)$."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "94056ef6",
   "metadata": {},
   "source": [
    "Intialize model and create dataset"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "0a59179d",
   "metadata": {},
   "outputs": [],
   "source": [
    "from kan import KAN, create_dataset\n",
    "import torch\n",
    "\n",
    "\n",
    "model = KAN(width=[3,1,1], grid=3, k=3)\n",
    "\n",
    "# create dataset\n",
    "f = lambda x: (torch.sin(torch.pi*x[:,[0]]) + torch.cos(torch.pi*x[:,[1]]) + torch.tan(torch.pi/2*x[:,[2]]) > 0).float()\n",
    "dataset = create_dataset(f, n_var=3)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "3837440b",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor(0.4870, dtype=torch.float32)"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.mean(dataset['train_label'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "fe38f7c5",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 500x400 with 5 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "model(dataset['train_input'])\n",
    "model.plot(beta=10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "8627b850",
   "metadata": {},
   "outputs": [],
   "source": [
    "# set the last activation to be sigmoid\n",
    "model.fix_symbolic(1,0,0,'sigmoid',fit_params_bool=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "3957140b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 500x400 with 5 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "model(dataset['train_input'])\n",
    "model.plot(beta=10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "be0b0daf",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "train loss: 5.92e-02 | test loss: 9.67e-02 | reg: 7.76e+00 : 100%|██| 50/50 [00:08<00:00,  5.79it/s]\n"
     ]
    }
   ],
   "source": [
    "model.train(dataset, opt=\"LBFGS\", steps=50, lamb=0.001, lamb_entropy=10.);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "2f9b37a8",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZcAAAFICAYAAACcDrP3AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA3uklEQVR4nO3deVQUd4IH8G810HKLMIiiiNC0Bx6YoOKBt4EYc5gY85JMjon7cu2s7mQmb+YlO5nZjTvzdnZmE0123ByTedFJ1E2iuUZWjFHjBSoeiOAFiIoiIggKNEd3/fYP0mWXgIHugqpuvp/3eFql2D/pqv7W75aEEAJEREQaMuldACIi8j0MFyIi0hzDhYiINMdwISIizTFciIhIcwwXIiLSHMOFiIg0x3AhIiLNMVyIiEhzDBciItIcw4WIiDTHcCEiIs0xXIiISHMMFyIi0hzDhYiINOevdwGIvIEQAtXV1aivr0doaCiioqIgSZLexSIyLNZciG6jtrYWq1atgtVqRXR0NBISEhAdHQ2r1YpVq1ahtrZW7yISGZLEnSiJOpadnY3FixejsbERQFvtxclZawkODsbGjRuRmZmpSxmJjIrhQtSB7OxsLFy4EEIIyLLc6d8zmUyQJAmbN29mwBC5YLgQ3aK2thZDhw6FzWa7bbA4mUwmBAUFoby8HBERET1fQCIvwD4XolusWbMGjY2NXQoWAJBlGY2NjVi7dm0Pl4zIe7DmQuRCCAGr1YrS0lJ059aQJAmJiYk4c+YMR5ERgeFCpHL16lVER0d3+GdmAEMAXATQcpvvj4qK6qHSEXkPNosRuaivr+/0z4YA+K/vf+3MjRs3tC4SkVdiuBC5CA0N9ej7w8LCNCoJkXdjuBC5iIqKgsVi6Xa/iSRJsFgsiIyM7KGSEXkXhguRC0mSsGzZMre+d/ny5ezMJ/oeO/SJbtHZPJcEtPW5/ALAWZe/z3kuRO2x5kJ0i4iICGzcuBGSJMFkuv0t4pyhv2nTJgYLkQuGC1EHMjMzsXnzZgQFBUGSpHbNXc5zQUFByMrKQkZGhk4lJTImhgtRJzIzM1FeXo6VK1ciMTFR9WeJiYlYuXIlLl68yGAh6gD7XIi6QAiB2sOHYX71VbT8/veIuPNOdt4T3QY3CyPqAkmSMGDAACA4GCEDBgAMFqLbYrMYERFpjuFCRESaY7gQEZHmGC5ERKQ5hgsREWmO4UJERJpjuBARkeYYLkREpDmGCxERaY7hQkREmmO4EBGR5hguRESkOYYLERFpjkvuE3VVQwNQUACMGweEhOhdGiJDY7gQdZXDATQ1AYGBgJ+f3qUhMjSGCxERaY59LkREpDnuREmG4XA4cPHUKThsNr2L4vWiLBaER0ToXQzqwxguZBh2ux1VH3yA1pYWmIKC9C6OVxJCIKCiAli+HOGTJ+tdHOrDGC5kKHaTCTFLl2Lo2LF6F6V7ZBlobm77VS8mE+wBAShYsQLsSiW9MVzIcEx+fggICNC7GF0jBHD1KrBuHXDqFGC361eWqCjgV7+CJEn6lYHoewwXIk84HMDf/gbs3q13SQBJags7IgPgaDEiT9TWtk2sJCIV1lyIPFFT0zZz3ykuDhg4UJ+y9O/PyZ1kGAwXIk/U1an7WRYtAmbN0qcsktTWTEdkAAwXIk80Nt78vSQBYWH61h4YLmQQ7HMh8oTNdrMT3WQCOD+HCADDhcgzzc03fy9JgLcMoSbqYQwXIncJAbS23jxmuBApGC5Enmhpufl7k4mjtYi+x3Ah8oRruPj5Af4cI0MEMFyIPOPaLGYyMVyIvsdwIfKE6xwXSWKzGNH3GC5EnnANF5Op7YuIGC5EHnGdtGgytdVeiIjhQuQ2IdqHC2suRAAYLkSeYc2FqEMMFyJ3seZC1CneCUSecN3WWJJYcyH6HsOFyBMMF6IOMVyIPOEaLuxzIVIwXIg8cWvNhYgAMFyI3CcEay5EnWC4EHmCfS5EHWK4ELmro5oLEQFguBB5xrnFMcBwIXLBu4HIXbfWXNgsRqRguBC5S4j2NReGCxEAhguRZ9jnQtQh3g1EnmC4EHWIdwORu25tFmOfC5GC4ULkLk6iJOoUw4XIE2wWI+oQ7wYid3U0WoyIADBciNzHcCHqFO8GIndx+ReiTvFuIHIXay5EneLdQOQuztAn6hTDhchdrLkQdYp3A5G72OdC1CneDUTuYrMYUacYLkTuYrMYUad4NxC5i+FC1CneDUTuYrgQdYp3A5G7GC5EneLdQOQuhgtRp3g3ELlLlhkuRJ3g3UDkLoYLUad4NxC5yzVYAMDPT59yEBkQw4XIXay5EHWKdwORu9ihT9Qp3g1E7mK4EHWKdwORu25tFvPz49piRN9juBC5i30uRJ3i3UDkLtfl9gGOFiNywXAhchdrLkSd4t1A5C7WXIg6xXAhchdrLkSd4t1A5K5bay4MFyIF7wYid7FZjKhTDBcidzkc7ee5EBEAhguR+1zDRZIYLkQuGC5E7mKzGFGnGC5E7rLb1ccMFyIFw4XIXQ6H+tjfX59yEBkQw4XIXXY7+1yIOsFwIXLXrc1irLkQKRguRO5qbb35e0liuBC5YLgQuaul5ebvTSYgIEC/shAZDMOFyF2u4cKaC5EKw4XIHUIAzc03j1lzIVJhuBC5q6np5u/9/RkuRC4YLkTuEAJoaLh5HBAAmM36lYfIYNhITMZ05QpQUuL5v+O6sKSWf18I4MKFm8eBgQwXIhcMFzKmggLgz3/WuxS35xpEAwYwXIhcMFzImITofq1DT6NGcbQYkQveDWRMktT2ZXSSBCQlAZmZepeEyFAYLmRMY8YAP/9597+vJwOpo387OBhITATCwrwjDIl6CcOFDMUky6g6dQqOpibv6MNoaQFOntS7FAqHwwHHjRtgzJHeGC5kGCZJAoYNgzh0CNWHDuldHK8VEBwMv9BQvYtBfZwkhDf1mpIvE0LA4XCAl6Tn/Pz8YDJxGhvph+FCRESa46MNERFpjuFCRESaY7gQEZHmGC5ERKQ5hgtRVzkcbSshOxx6l4TI8BguRF117hzwxBNtvxLRbTFciIhIcwwXIiLSHMOFiIg0x3AhIiLNMVyIiEhzDBciItIcw4WIiDTHcCEiIs0xXIiISHMMFyIi0hzDhYiINMdwISIizTFciIhIcwwXIiLSHMOFqAuEEKipqUFDYyNqamoghNC7SESGxnAhuo3a2lqsWrUKVqsVEydNwtatWzFx0iRYrVasWrUKtbW1eheRyJAkwUcwog5lZ2dj8eLFaGxsBAAMFwL/BeAXAMokCQAQHByMjRs3IjMzU7+CEhkQay5EHcjOzsbChQths9kghGjXDOY8Z7PZsHDhQmRnZ+tUUiJjYrgQ3aK2thaLFy+GEAKyLN/278qyDCEEFi9ezCYyIhcMF6JbrFmzBo2NjT8YLE6yLKOxsRFr167t4ZIReQ+GC5ELIQTefvttt773rbfe4igyou8xXIhcVFdXo6SkpNshIYRASUkJampqeqhkRN6F4UIEwGazobCwEJs2bfLo3ykqKmLthQgcikx9jCzLqKioQElJCYqLi1FcXIySkhJcvHgRAOBwOJCbm9vh95oBDAFwEUDLbV4jLCwM48ePV32NGzcOYWFhWv93iAyL4UI+q6GhASUlJUqQOH9vs9kAAP3790dSUhKSkpJgsViQlJSE+Ph4jBkzBqWlpd2ugcTHx2P16tUoKCjAsWPHkJ+fj5MnT8LhcAAAEhMTlbBJSUnB+PHjkZiYCJOJDQjkexgu5PVkWcbFixdVNZGSkhJUVFQAAPz8/DB8+HAlRJxBEhkZCen7yZCuVq1ahZdeeqlb4SJJElauXInly5erzjc3N+PEiRNK2Dh/raqqAgCEhIRg7NixStg4azkRERHu/0CIDIDhQl7lxo0bqppIcXExSktL0dzcDACIjIxU1USSkpIwbNgwBAQEdPk1amtrMXToUNhsti4NRzaZTAgKCkJ5eXmXQ6GyslIJG+dXUVERWltbAbTVglyb1VJSUpCUlAQ/P78u/z+I9MRwIUNyOBy4cOGCqiZSXFyMK1euAAACAgKQkJCgqolYLBYMGDBAk9d3ztD/oYmUJpMJkiQhKysLGRkZHr1mS0sLTp06pYSNM3ycNbDAwECMHTtW1aw2fvx4REZGevS6RD2B4UK6q6urU9VEiouLcfbsWeUpPjo6WlUTsVgsiIuLg7+/f4+W69a1xVxvFcllbbFNmzZ5HCy3U1VVhYKCAlVNp7CwUKmtDRkyRBU248ePx8iRI3v850N0OwwX6jV2ux3nzp1T1USKi4tRXV0NADCbzUhMTFQFSWJiIvr3769bmWtra7F27Vq89dZbKCkpUc5bLBYsX74cTz/9tC7ls9vtOH36tKpZLT8/H+Xl5QDafpZjxoxpN4AgOjq618tKfRPDhXpETU1Nu+G+ZWVlsNvtAICYmBhVTcRZGzHqyCkhBHJycvCTn/wEH374IaZOndrhYAC91dTUqEarHTt2DMePH1dGyA0aNKhds9qoUaNgNpt1Ljn5GoYLeaS1tRVlZWXtguTatWsA2voJEhMT2wVJaGioziXvvqKiIixZsgSffvopkpOT9S5OlzkcDpSUlLQbQFBWVgagrf9q9OjR7QYQxMTEGDJAyTuwUZa6RAiB6upqVd9ISUkJzp07p8zjiI2NhcViwaJFi5SmrdjYWMPWRvoKPz8/jBgxAiNGjMCSJUuU83V1dUotx/n1+eefo6GhAUBbX9etzWqjR49GYGCgXv8V8iKsuVA7zc3NKCsrazdvpK6uDgAQFBTUriaSmJiIkJAQnUves7y15tIdsizj7Nmz7UasOfub/Pz8MHLkyHYDCIYMGcJaDqmw5tKHCSFw5cqVdvNGLly4AFmWIUkShgwZgqSkJDz88MNKoMTExLA24qNMJpPywPDggw8q5+vr63H8+HFV09rmzZtx/fp1AG3zi25tVktOTkZwcLBe/xXSGWsufURTUxNKS0vbzRupr68HAISGhrabwZ6YmMgmEBd9oebSHUIInDt3rt2ItTNnzkAIAZPJBKvV2m4AwbBhw1jL6QMYLj5GCIHLly+3mzdy8eJF5YaPi4trN29k4MCBvOF/AMOlaxobG1FYWKhqVjt27JgyyKN///7tFvYcO3asVw7yoM6xWcyLNTY2KrUQ16Yt56S/8PBwJCUlYerUqUqQDB8+HP369dO55OTLgoODMWnSJEyaNEk5J4TAxYsXVWGzY8cOvPPOO3A4HJAkCRaLpd0AguHDh7MJ1ksxXLyALMu4dOlSu+G+ly5dAtDWTh4fH4+kpCSkp6crTVs/+tGPWBshQ5AkCUOHDsXQoUOxcOFC5XxTUxOKiopUzWpvv/22MrE2NDQU48aNa7ewZ3h4uF7/FeoihovB1NfXt5vBXlpaiqamJgBAREQEkpKSMHPmTKVJa/jw4d1amJHIKAIDA3HnnXfizjvvVM45m3Zdm9X27t2Lv/zlL8ok3ISEhHYDCBITE7mwp4EwXHQiyzLKy8vbzRu5fPkyAMDf3x/Dhw+HxWLBnDlzVMvEE/kySZIwePBgDB48GJmZmcr5lpYWZfsC59d7772HyspKAG3Ncbcu7Dlu3DjNFjOl7mG49ILr16+3a9IqLS1FS0vbfoZRUVFISkrCvHnzlCat7i4TT+TrzGYzUlJSkJKSojpfWVmpWvImLy8Pa9euVe6vuLi4diPWrFYrF/bsYfzpasjhcOD8+fPt5o04N4ZyLhOflJSEu+66S2nW4sZQRO6LiYlBTEwM5s+fr5xrbW3F6dOnVQMI1qxZo2xnHRgYqFrY0/n1ox/9SK//hs/hUGQ31dbWoqSkBGfOnFH6SFyXiR84cGC7eSNxcXFsE/ZiHIrs/a5evapa8iY/Px+FhYVKn2ZsbGy7EWsjR45kK4IbGC5d0NDQgD179qiatmpqagAA/fr163CZeI5m8T0MF99kt9tRXFzcbl7O+fPnAbS1OCQnJythM3PmTNUwa+oYw6ULWltbceLECZjNZgQGBipfQUFBMJvNHO7bRzQ1NeHChQuIi4vjygVEP4Dh0gXOrW7ZpNW3ybKMlpYWmM1mTuwj+gEMFyIi0hwfv4iISHOGGYrscDhQWFiobFRE7hs5cqRXTrZ0OBzIz89XVmom9yUnJ3vlsFqHw4GcnBxlKX9yX2pqKmJiYnR7fcM0izU3N+PFF19ES0sLgoKC9C6O17pw4QJ+/etfIz09Xe+idFtTUxOeeuopNDU1+fzGYz3FuQz+73//e8yZM0fv4nSbzWZDeno6bDYbwsLC9C6OVxJC4MyZM1izZg3uv/9+3cphmJqLczn4ZcuW4Y477tC7OD3GbrejubkZ/v7+mo80s9vtePnll2GQ54VuE0JAkiT86le/MtxQT1mW0dzcDFmWYTabDTvvwW6344UXXvDqa8BkMuHNN9/E7Nmz9S6OV6irq0N+fj7Gjx+PiIgItLa2YsGCBbpfA4YJFyc/Pz+YzWa9i6Ep546P//d//4fc3FxUV1cjKCgIo0aNwj333IOxY8dqshSFJEk+MSzaKNeAEAKNjY3YtWsXsrOzUVJSgtbWVkRFRWHSpEm49957kZiYaKiRY75yDfj7+3NriC4QQmDnzp14+umnMWzYMGRmZuLFF180xDVguHDxNbIsIycnB2+//TbKy8tVf1ZaWoodO3Zg4cKFWLp0KcLCwgxxUVDbTXvy5En88Y9/xOHDh5XVeAGgvLwc+fn5+Oyzz/DEE0/gySefRHBwMN876nWyLOPLL79EU1MTTp8+jfLycixZskTvYgHgaLEeJcsydu7ciX//939vFyxONpsNGzduxIoVK1BTU6N7VZbagmXfvn1YtmwZDhw4oAoWV7W1tVi9ejVee+01XLt2je8d9brLly/ju+++U46Tk5MxduxYHUt0E8OlhwghUFhYiDfffBM3btxQzvfv3x933HEHhg0bpjSnCCGQk5ODP/3pTxwppTMhBA4fPoxf//rXyvYHQNuKvKNHj0ZaWppqS2hZlvHNN9/gX//1X3H9+nUGDPUaIQS+++47VFRUKOcWLlyI4OBgHUt1E8Olh9TV1eGtt95S9g0HgHHjxmHVqlV488038c4772Dp0qWqkXF79+7Fhx9+2OmTMvUsIQQuXbqE119/XVnJGgCGDx+ON954A2vXrsW7776Ljz/+GE888YTSJyCEwI4dO/D2228rC5cS9TSHw4GNGzdClmUAbfvZLFy40DDNswyXHiDLMjZu3IiTJ08q56xWK37zm9/AYrHA398f4eHhePLJJ7F8+XJlnSpZlvHFF19gz549fALWQUtLC1auXImSkhLlnNVqxapVqzBr1iwEBQXB398fgwcPxs9//nO8/PLLynsnhMDGjRvx9ddf872jXnHu3Dns3r1bOU5JScGYMWN0LJEaw0VjznkGX375pfIhExoain/+53/GoEGDVE8Vfn5+WLBgAR5//HGliay5uRnvv/8+rl69yg+pXiSEwNatW7Ft2zblXHR0NFasWIHExMR2T4MBAQFYsmQJnn/+eWWkX2trK1avXo3S0lK+d9SjhBDYvHkzrl69qpx78MEHDTVHkOGiMWetxbkkPwDcd999GDduXIfVVX9/fzz66KOYPHmycu7cuXPYsGGDUt2lnlddXY33339fadYKCAjAsmXLMGbMmE6bGfz9/fHEE08gIyNDOVdZWYnVq1ezeYx6lM1mw//+7/8qDzGRkZG47777DNMkBjBcNHf+/Hns2LFDOR48eDAefvjh266oHBQUhOeff16113dWVhZOnz7NJ+BeIMsyPvvsM5w9e1Y5N2vWLNxzzz0/eLMGBgZi+fLliIuLU87t2LGDTZvUY4QQOHjwIA4fPqycmzVrFiwWi46lao/hoiFZlrF582bU1dUBaJvQ9sADD2DgwIG3/T5JkmCxWLB48WLlw+zGjRvYsGEDO/d7QUVFBT777DMlDCIiIvD88893aRKfJEkYMmSIqnmspaUFH3zwAUf+UY+QZRlr165Vds/09/fHj3/8Y00mYmuJ4aKhqqoqbN++XTkeOHAgMjIyulRVNZlMeOCBBzB8+HDl3L59+3D8+HE+AfcgIQS++OIL1bDj++67DyNGjOhyE4MkScjIyFAtWXP8+HFs27aN7x1p7uzZs9i8ebNyPGLECMyZM8dQTWIAw0UzQgjs2bNHNYR1/vz53VqZNiIiAkuWLFE6950TLFl76TlXr17F119/rRxHRkbikUce6faSLkFBQfiHf/gHZfSYw+HA+vXrVXOciDwlhMC6detQWVmpnHvsscdUTepGwXDRSFNTE7Kzs1UjxLpaa3GSJAmzZ89GUlKScm7//v3se+khQghs374dly5dUs7dfffdiI+P7/ZToCRJSE1NVa1GferUKXz33Xd870gzlZWV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\n",
      "text/plain": [
       "<Figure size 500x400 with 5 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "model.plot(beta=10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "d6d85bda",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
